﻿Namespace Facades

    Public NotInheritable Class RadialGaugeScaleFacade

        Private brother As Infragistics.Controls.Charts.RadialGaugeScale

        Public Sub New(ByVal brother As Infragistics.Controls.Charts.RadialGaugeScale)
            MyBase.New()
            Me.brother = brother
        End Sub

        Public ReadOnly Property Needles() As IEnumerable(Of RadialGaugeNeedleFacade)
            Get
                Return From elt In Me.brother.Needles Select New RadialGaugeNeedleFacade(elt)
            End Get
        End Property

        Public ReadOnly Property TickMarkGroups() As System.Collections.ObjectModel.ObservableCollection(Of Infragistics.Controls.Charts.RadialGaugeTickMarkGroup)
            Get
                Return Me.brother.TickMarkGroups
            End Get
        End Property

        Public ReadOnly Property LabelGroups() As System.Collections.ObjectModel.ObservableCollection(Of Infragistics.Controls.Charts.RadialGaugeLabelGroup)
            Get
                Return Me.brother.LabelGroups
            End Get
        End Property

        Public ReadOnly Property Ranges() As IEnumerable(Of RadialGaugeRangeFacade)
            Get
                Return From elt In Me.brother.Ranges Select New RadialGaugeRangeFacade(elt)
            End Get
        End Property

        <EditableProperty()> _
         Public Property StartValue() As Double
            Get
                Return Me.brother.StartValue
            End Get
            Set(ByVal value As Double)
                Me.brother.StartValue = value
            End Set
        End Property

        <EditableProperty()> _
         Public Property StartAngle() As Double
            Get
                Return Me.brother.StartAngle
            End Get
            Set(ByVal value As Double)
                Me.brother.StartAngle = value
            End Set
        End Property

        <EditableProperty()> _
         Public Property EndAngle() As Double
            Get
                Return Me.brother.EndAngle
            End Get
            Set(ByVal value As Double)
                Me.brother.EndAngle = value
            End Set
        End Property

        <EditableProperty()> _
         Public Property Interval() As Double
            Get
                Return Me.brother.Interval
            End Get
            Set(ByVal value As Double)
                Me.brother.Interval = value
            End Set
        End Property

        <EditableProperty()> _
         Public Property EndValue() As Double
            Get
                Return Me.brother.EndValue
            End Get
            Set(ByVal value As Double)
                Me.brother.EndValue = value
            End Set
        End Property
    End Class
End Namespace
